home *** CD-ROM | disk | FTP | other *** search
/ Aminet 34 / Aminet 34 (2000)(Schatztruhe)[!][Dec 1999].iso / Aminet / util / misc / dial.lha / Dial / source / _cat.c next >
Encoding:
C/C++ Source or Header  |  1999-03-19  |  7.3 KB  |  138 lines

  1. /* Prototypes */
  2. #ifdef __GNUC__
  3. #include <proto/locale.h>
  4. #include <proto/dos.h>
  5. #else
  6. #include <proto/locale.h>
  7. #include <clib/dos_protos.h>
  8.  
  9. extern struct Library *LocaleBase;
  10.  
  11. #endif /* __GNUC__ */
  12.  
  13.  
  14.  
  15. static LONG DialStrings_Version = 0;
  16. static const STRPTR DialStrings_BuiltInLanguage = (STRPTR) "english";
  17.  
  18. struct FC_Type
  19. {   LONG   ID;
  20.     char *Str;
  21. };
  22.  
  23. /* Definitions */
  24. const struct FC_Type _MSG_AppDescription = { 0, "dials DTMF numbers over speaker" };
  25. const struct FC_Type _MSG_GR_grp_00 = { 1, "Dial" };
  26. const struct FC_Type _MSG_GR_grp_01 = { 2, "Phonebook" };
  27. const struct FC_Type _MSG_GR_grp_02 = { 3, "Prefs" };
  28. const struct FC_Type _MSG_BT_Dial = { 4, "d\00Dial!" };
  29. const struct FC_Type _MSG_STR_Name = { 5, "Name:" };
  30. const struct FC_Type _MSG_STR_Number = { 6, "Number:" };
  31. const struct FC_Type _MSG_BT_Add = { 7, "Add" };
  32. const struct FC_Type _MSG_BT_Remove = { 8, "Remove" };
  33. const struct FC_Type _MSG_BT_Sort = { 9, "Sort List" };
  34. const struct FC_Type _MSG_BT_Load = { 10, "Load" };
  35. const struct FC_Type _MSG_BT_Save = { 11, "Save" };
  36. const struct FC_Type _MSG_LA_label_5 = { 12, "Beep Length" };
  37. const struct FC_Type _MSG_LA_label_6 = { 13, "Pause Length" };
  38. const struct FC_Type _MSG_LA_label_10 = { 14, "Wait Length" };
  39. const struct FC_Type _MSG_LA_label_7 = { 15, "telephone system" };
  40. const struct FC_Type _MSG_LA_label_8 = { 16, "Dial Code (+)" };
  41. const struct FC_Type _MSG_LA_label_9 = { 17, "Phonebook" };
  42. const struct FC_Type _MSG_BT_PrefSave = { 18, "Save Config" };
  43. const struct FC_Type _MSG_LV_Name = { 19, "\e3Name" };
  44. const struct FC_Type _MSG_LV_Number = { 20, "\e3Number" };
  45. const struct FC_Type _MSG_Quit = { 21, "Phonebook has been changed!\nDo you really want to quit?" };
  46. const struct FC_Type _MSG_Quit_BT = { 22, "_Quit|_Cancel" };
  47. const struct FC_Type _MSG_MEN_PROJECT = { 23, "Project" };
  48. const struct FC_Type _MSG_MEN_LOAD = { 24, "Load Phonebook" };
  49. const struct FC_Type _MSG_MEN_SAVE = { 25, "Save Phonebook" };
  50. const struct FC_Type _MSG_MEN_ABOUT = { 26, "About..." };
  51. const struct FC_Type _MSG_MEN_ABOUTMUI = { 27, "About MUI..." };
  52. const struct FC_Type _MSG_MEN_QUIT = { 28, "Quit" };
  53. const struct FC_Type _MSG_MEN_SET = { 29, "Settings" };
  54. const struct FC_Type _MSG_MEN_SETTINGS = { 30, "Dial" };
  55. const struct FC_Type _MSG_MEN_MUISET = { 31, "MUI..." };
  56. const struct FC_Type _MSG_MEN_SAVESET = { 32, "save" };
  57. const struct FC_Type _MSG_ReallyLoad = { 33, "Phonebook has been changed!\nDo you really want to load a new one?" };
  58. const struct FC_Type _MSG_BT_ReallyLoad = { 34, "_Load|_Cancel" };
  59. const struct FC_Type _MSG_BH_LV_main = { 35, "This is a list of your phone numbers.\nDouble click an entry to dial the number.\nYou can edit your phone numbers on Phonebook-page."};
  60. const struct FC_Type _MSG_BH_BT_Dial = { 36, "Dial the number selected in list"};
  61. const struct FC_Type _MSG_BH_LV_set = { 37, "This is the phonebook.\nYou can sort the entries with drag&drop."};
  62. const struct FC_Type _MSG_BH_STR_Name = { 38, "Here you can change the\nname in selected list entry."};
  63. const struct FC_Type _MSG_BH_STR_Number = { 39, "Here you can change the\nnumber in selected list entry."};
  64. const struct FC_Type _MSG_BH_BT_Add = { 40, "This button adds an empty entry at the end of the list.\nYou can enter a new name and number."};
  65. const struct FC_Type _MSG_BH_BT_Remove = { 41, "With this button, you can remove the active entry in list.\nBEWARE: There is no way to get the entry back,\nif you haven't saved the phonebook."};
  66. const struct FC_Type _MSG_BH_BT_Sort = { 42, "Sort the names in list alphabetically."};
  67. const struct FC_Type _MSG_BH_BT_Load = { 43, "Load phonebook from disk.\nYou can set the name of your phonebook-file\non settings-page."};
  68. const struct FC_Type _MSG_BH_BT_Save = { 44, "Save phonebook to disk.\nYou can set the name of your phonebook-file\non settings-page."};
  69. const struct FC_Type _MSG_BH_SL_Length = { 45, "The duration of a DTMF tone in milliseconds"};
  70. const struct FC_Type _MSG_BH_SL_Pause = { 46, "The duration of the pause between \ntwo DTMF tones in milliseconds"};
  71. const struct FC_Type _MSG_BH_SL_Wait = { 47, "The time to wait when a '!'\ncharacter is in number."};
  72. const struct FC_Type _MSG_BH_CH_system = { 48, "Activate this, if you have a telephone system.\nEnter the number you have to dial\nfor an exchange line in string gadget on the right."};
  73. const struct FC_Type _MSG_BH_STR_system = { 49, "Enter number for exchange line.\nUse a '!' to wait some time for the line.\nYou can set the wait time with the wait length slider above."};
  74. const struct FC_Type _MSG_BH_STR_DialCode = { 50, "Enter the dial code to call to foreign countries.\nA '+' in a number will be replaced with this number.\nUse '!' to wait some time for the line."};
  75. const struct FC_Type _MSG_BH_STR_PA_pbname = { 51, "Enter the filename of your phonebook"};
  76. const struct FC_Type _MSG_BH_BT_PrefSave = { 52, "Save all settings on this page"};
  77. const struct FC_Type _MSG_NOTLOADED = { 53, "Could not load phonebook.\nPlease check filename on settings-page."};
  78. const struct FC_Type _MSG_NOTSAVED = { 54, "Could not save phonebook.\nPlease check filename on settings-page."};
  79. const struct FC_Type _MSG_BT_OK = { 55, "OK"};
  80. const struct FC_Type _MSG_ABOUT1 = { 56, "\ecThis program is Mailware!"};
  81. const struct FC_Type _MSG_ABOUT2 = { 57, "\ecPlease send me an email,"};
  82. const struct FC_Type _MSG_ABOUT3 = { 58, "\ecif you like it."};
  83. const struct FC_Type _MSG_CH_CONCEAL = { 59, "Conceal ID"};
  84. const struct FC_Type _MSG_BH_CH_CONCEAL = { 60, "Don't submit your telephone\nnumber when you call someone.\nThis is done by dialling *31# in front\nof the telephone number and may not\nwork in all telephone networks."};
  85. const struct FC_Type _MSG_Label_AudioLR = { 61, "Audio output"};
  86. const struct FC_Type _MSG_Left = { 62, "left"};
  87. const struct FC_Type _MSG_Right = { 63, "right"};
  88. const struct FC_Type _MSG_BH_SL_AudioLR = { 64, "Volume of dial tone on left or right speaker.\nStereo output does not work."};
  89. const struct FC_Type _MSG_Off = { 65, "off"};
  90. const struct FC_Type _MSG_MEN_LOADSET = { 66, "load"};
  91. const struct FC_Type _MSG_MEN_SETDEFAULT = { 67, "default"};
  92.  
  93. extern void CloseAppCatalog(void);
  94.  
  95. static struct Catalog *DialStrings_Catalog = NULL;
  96.  
  97. void OpenAppCatalog(struct Locale *loc, STRPTR language)
  98. {
  99.         LONG tag, tagarg;
  100.  
  101.         CloseAppCatalog(); /* Not needed if the programmer pairs OpenAppCatalog
  102.                         and CloseAppCatalog right, but does no harm.  */
  103.  
  104.         if (DialStrings_Catalog == NULL)
  105.         {
  106.                 if (language == NULL)
  107.                         tag = TAG_IGNORE;
  108.                 else
  109.                 {
  110.                         tag = OC_Language;
  111.                         tagarg = (LONG) language;
  112.                 }
  113.                 DialStrings_Catalog = OpenCatalog(loc, (STRPTR) "Dial.catalog",
  114.                         OC_BuiltInLanguage,(LONG)DialStrings_BuiltInLanguage,
  115.                         tag, tagarg,
  116.                         OC_Version, DialStrings_Version,
  117.                         TAG_DONE);
  118.         }
  119. }
  120.  
  121. void CloseAppCatalog(void)
  122. {
  123.         CloseCatalog(DialStrings_Catalog);
  124.         DialStrings_Catalog = NULL;
  125. }
  126.  
  127. char * GetDialString(APTR fcstr)
  128. {
  129.         char *defaultstr;
  130.         LONG strnum;
  131.  
  132.         strnum = ((struct FC_Type *) fcstr)->ID;
  133.         defaultstr = ((struct FC_Type *) fcstr)->Str;
  134.  
  135.         return(DialStrings_Catalog ? (char *)GetCatalogStr(DialStrings_Catalog, strnum, defaultstr) :
  136.                         defaultstr);
  137. }
  138.